# 使用官方的 Node.js LTS 版本作为基础镜像
FROM node:18

# 设置工作目录
WORKDIR /usr/src/app

# 复制 package.json 和 package-lock.json（如果有）到工作目录
COPY package*.json ./

# 全局安装 PM2
RUN npm install -g pm2

# 安装所有依赖项
RUN npm install

# 复制应用程序的所有源文件到工作目录
COPY . .

# 暴露应用程序所需的端口（假设 Express 应用监听3008端口）
EXPOSE 3000

# 使用 PM2 启动应用程序
CMD ["pm2", "start", "pm2.config.json", "--no-daemon"]